Web Connections provide a pointer to a Web Service (SOAP). You configure the Web Connection with the appropriate details for connecting to the Web Service.
By being a separate module from the Web Definition it allows you to create a single Web Definition and use it against multiple similar Web Services in different locations simply by assigning a different Web Connection.
When assigning a Web Connection to a Web Definition it is considered a design time assignment, when coming to use the Web Definition in an Action you have the chance to reassign the Web Connection. This allows you to use the same Web Definition in multiple Actions each with their own Web Connection. This is run time assignment.